population = read.csv("data.csv", header = TRUE, sep = ",")
print(population)
population$Age
# Charger les données
population = read.csv("data.csv", header = TRUE, sep = ",")
# Afficher la population
print(population)
# Calculer la moyenne de l'âge de la population
moyenne_age <- mean(population$Age)
print(paste("Moyenne d'âge:", round(moyenne_age, 2)))
# Compter la fréquence de chaque âge
age_freq <- table(population$Age)
age_freq
# Créer le bar plot
barplot(age_freq,
main = "Distribution des Âges dans la Population",
xlab = "Âge",
ylab = "Fréquence",
col = "steelblue",
border = "white")
# Installer et charger les packages nécessaires (si besoin)
# install.packages("ggplot2")
library(ggplot2)
# Créer un data frame pour ggplot2
df <- data.frame(Age = population$Age)
df
# Bar plot avec densité kernel
ggplot(df, aes(x = Age)) +
geom_bar(aes(y = ..density..),
fill = "steelblue",
alpha = 0.6,
binwidth = 1) +
geom_density(color = "red",
size = 1.2,
adjust = 1) +
labs(title = "Distribution des Âges avec Densité Kernel",
x = "Âge",
y = "Densité") +
theme_minimal()
# Histogramme avec densité
hist(population$Age,
freq = FALSE,
main = "Histogramme avec Densité Kernel",
xlab = "Âge",
ylab = "Densité",
col = "lightblue",
border = "white")
# Ajouter la moyenne
abline(v = moyenne_age,
col = "blue",
lwd = 2,
lty = 2)
# Charger les données
population <- read.csv("data.csv", header = TRUE, sep = ",")
# Calculer la moyenne d'âge
moyenne_age <- mean(population$Age)
cat("Moyenne d'âge :", round(moyenne_age, 2), "\n")
# Fréquences des âges
freq_age <- table(population$Age)
# Créer le graphique de base
plot(freq_age,
type = "h",                    # Type "h" = bâtons verticaux (high-density)
lwd = 3,                       # Épaisseur des bâtons
col = "steelblue",
main = "Distribution des Âges (Variable Discrète)",
xlab = "Âge",
ylab = "Fréquence",
ylim = c(0, max(freq_age) * 1.2))  # Marge pour la légende
# Ajouter les points au sommet des bâtons
points(freq_age,
pch = 16,
col = "darkblue",
cex = 1.2)
# Superposer la densité kernel (ajustée pour l'échelle)
dens <- density(population$Age, adjust = 1.5)
lines(dens$x,
dens$y * length(population$Age) * 1,  # Mise à l'échelle pour correspondre aux fréquences
col = "red",
lwd = 2)
# Ajouter la moyenne
abline(v = moyenne_age,
col = "darkgreen",
lwd = 2,
lty = 2)
# Légende
legend("topright",
legend = c("Fréquence observée", "Densité kernel", "Moyenne"),
col = c("steelblue", "red", "darkgreen"),
lwd = c(3, 2, 2),
lty = c(1, 1, 2),
pch = c(16, NA, NA),
pt.cex = c(1.2, NA, NA),
bty = "n")
library(ggplot2)
# Data frame pour ggplot
df <- data.frame(Age = population$Age)
# Calcul des fréquences
freq_df <- as.data.frame(table(df$Age))
colnames(freq_df) <- c("Age", "Freq")
freq_df$Age <- as.numeric(as.character(freq_df$Age))
ggplot() +
# Bâtons pour les fréquences observées
geom_segment(data = freq_df,
aes(x = Age, xend = Age, y = 0, yend = Freq),
color = "steelblue",
size = 1.2) +
geom_point(data = freq_df,
aes(x = Age, y = Freq),
color = "darkblue",
size = 3) +
# Densité kernel (superposée, mise à l'échelle)
geom_density(data = df,
aes(x = Age, y = ..count..),
color = "red",
size = 1.2,
adjust = 1.5,
inherit.aes = FALSE) +
# Ligne de moyenne
geom_vline(xintercept = moyenne_age,
color = "darkgreen",
linetype = "dashed",
size = 1) +
# Labels et thème
labs(title = "Distribution des Âges avec Densité Kernel",
subtitle = "Variable discrète : diagramme en bâtons",
x = "Âge",
y = "Fréquence",
caption = "Ligne verte = moyenne ; Courbe rouge = densité kernel") +
scale_x_continuous(breaks = sort(unique(df$Age))) +
theme_minimal() +
theme(plot.title = element_text(face = "bold"),
panel.grid.minor = element_blank())
# Charger les données
population <- read.csv("data.csv", header = TRUE, sep = ",")
# Fréquences des âges
freq_age <- table(population$Age)
# Créer le graphique de base
plot(freq_age,
type = "h",                    # Type "h" = bâtons verticaux (high-density)
lwd = 3,                       # Épaisseur des bâtons
col = "steelblue",
main = "Distribution des Âges (Variable Discrète)",
xlab = "Âge",
ylab = "Fréquence",
ylim = c(0, max(freq_age) * 1.2))  # Marge pour la légende
# Ajouter les points au sommet des bâtons
points(freq_age,
pch = 16,
col = "darkblue",
cex = 1.2)
# Créer le graphique de base
plot(freq_age,
type = "h",                    # Type "h" = bâtons verticaux (high-density)
lwd = 3,                       # Épaisseur des bâtons
col = "steelblue",
main = "Distribution des Âges (Variable Discrète)",
xlab = "Âge",
ylab = "Fréquence",
ylim = c(0, max(freq_age) * 1.2))  # Marge pour la légende
# Ajouter les points au sommet des bâtons
points(freq_age,
pch = 16,
col = "darkblue",
cex = 1.2)
# Superposer la densité kernel (ajustée pour l'échelle)
dens <- density(population$Age, adjust = 1.5)
lines(dens$x,
dens$y * length(population$Age) * 1,  # Mise à l'échelle pour correspondre aux fréquences
col = "red",
lwd = 2)
# Légende
legend("topright",
legend = c("Fréquence observée", "Densité kernel"),
col = c("steelblue", "red"),
lwd = c(3, 2),
lty = c(1, 1),
pch = c(16, NA),
pt.cex = c(1.2, NA),
bty = "n")
library(ggplot2)
# Data frame pour ggplot
df <- data.frame(Age = population$Age)
# Calcul des fréquences
freq_df <- as.data.frame(table(df$Age))
colnames(freq_df) <- c("Age", "Freq")
freq_df$Age <- as.numeric(as.character(freq_df$Age))
ggplot() +
# Bâtons pour les fréquences observées
geom_segment(data = freq_df,
aes(x = Age, xend = Age, y = 0, yend = Freq),
color = "steelblue",
size = 1.2) +
geom_point(data = freq_df,
aes(x = Age, y = Freq),
color = "darkblue",
size = 3) +
# Densité kernel (superposée, mise à l'échelle)
geom_density(data = df,
aes(x = Age, y = ..count..),
color = "red",
size = 1.2,
adjust = 1.5,
inherit.aes = FALSE) +
# Ligne de moyenne
geom_vline(xintercept = moyenne_age,
color = "darkgreen",
linetype = "dashed",
size = 1) +
# Labels et thème
labs(title = "Distribution des Âges avec Densité Kernel",
subtitle = "Variable discrète : diagramme en bâtons",
x = "Âge",
y = "Fréquence",
caption = "Ligne verte = moyenne ; Courbe rouge = densité kernel") +
scale_x_continuous(breaks = sort(unique(df$Age))) +
theme_minimal() +
theme(plot.title = element_text(face = "bold"),
panel.grid.minor = element_blank())
# Charger les données
population = read.csv("data.csv", header = TRUE, sep = ",")
# Charger les données
population = read.csv("data.csv", header = TRUE, sep = ",")
# Fréquences des âges
freq_age = table(population$Age)
# Créer le graphique de base
plot(freq_age,
type = "h",                    # Type "h" = bâtons verticaux (high-density)
lwd = 3,                       # Épaisseur des bâtons
col = "steelblue",
main = "Distribution des Âges (Variable Discrète)",
xlab = "Âge",
ylab = "Fréquence",
ylim = c(0, max(freq_age) * 1.2))  # Marge pour la légende
# Charger les données
population = read.csv("data.csv", header = TRUE, sep = ",")
# Fréquences des âges
freq_age = table(population$Age)
# Créer le graphique de base
plot(freq_age,
type = "h",                    # Type "h" = bâtons verticaux (high-density)
lwd = 3,                       # Épaisseur des bâtons
col = "steelblue",
main = "Distribution des Âges (Variable Discrète)",
xlab = "Âge",
ylab = "Fréquence",
ylim = c(0, max(freq_age) * 1.2))  # Marge pour la légende
# Superposer la densité kernel (ajustée pour l'échelle)
dens = density(population$Age, adjust = 1.5)
lines(dens$x,
dens$y * length(population$Age) * 1,  # Mise à l'échelle pour correspondre aux fréquences
col = "red",
lwd = 2)
# Légende
legend("topright",
legend = c("Fréquence observée", "Densité kernel"),
col = c("steelblue", "red"),
lwd = c(3, 2),
lty = c(1, 1),
pch = c(16, NA),
pt.cex = c(1.2, NA),
bty = "n")
#------------------------------------------------
# POPULATION:
#------------------------------------------------
# Charger le fichier CSV
population = read.csv("data.csv", header = TRUE, sep = ",")
# Afficher la population
print(population)
# Calculer la moyenne de l'âge de la population
mean(population$Age)
# Calculer la variance de l'âge de la population
var(population$Age)
# Calculer l'écart-type de l'âge de la population
sd(population$Age)
# Calculer la proportion des femmes dans la population
mean(population$HF)
# Taille d'échantillon
taille_echantillon = 50
# Colonne "Numero": data$Numero
echantillon = population[sample(data$Numero, taille_echantillon),]
echantillon = population[sample(data$Numero, taille_echantillon),]
echantillon = population[sample(population$Numero, taille_echantillon),]
print(echantillon)
mean(echantillon$Age)
var(echantillon$Age)
sd(echantillon$Age)
mean(echantillon$HF)
synthese = data.frame(
Statistique = c("Taille", "Moyenne", "Variance", "Ecart-type", "% Femmes",  "% Hommes"),
Echantillon = c(
round(taille_echantillon,0),
round(mean(echantillon$Age),2),
round(var(echantillon$Age),2),
round(sd(echantillon$Age),2),
round(mean(echantillon$HF)*100,2),
round((1-mean(echantillon$HF))*100,2)
),
Population = c(
round(nrow(population),0),
round(mean(population$Age),2),
round(var(population$Age),2),
round(sd(population$Age),2),
round(mean(population$HF)*100,2),
round((1-mean(population$HF))*100,2)
)
)
# Afficher le tableau
print(synthese)
